Repository navigation
test: guard same-job compile ratios on CPU time with wall backstops - #1162
Merged
Merged
Conversation
The plan-vs-compile and cache-write overhead guards compared two wall times in one job and failed at random on shared runners by hairlines. CPU time (user+sys) is now the tight limit and a looser wall-time ratio remains as a backstop for lost parallelism, lock waits and I/O. Limits are calibrated from recent CI job logs: each CPU limit clears the worst recent CPU ratio by at least 15%. The plan guard and the per-path cache measurements now log CPU time for both sides.
kvlonge
enabled auto-merge (squash)
October 19, 2026 16:59
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
Two compile performance guards compared two wall times measured in the same job and failed at random on shared runners by hairlines (plan vs warm compile 2.60 against a 2.6 limit; cache-write wall overhead 1.21 against 1.20). Wall time on shared runners is noisy; CPU time (user+sys) is steady and still catches added work.
Changes
The plan CPU ratio was not logged before, so its worst value is estimated from the planning-scaling test in the same job.
The warm, edit and project-rewrite to cold wall ratios (0.70/0.70/0.80, worst 0.61) keep their wall limits: CPU per path was not logged before, so they have no CPU data to calibrate from yet.
Verification
make check-cipassed.